package cn.smbms.dao;

import cn.smbms.pojo.User;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface UserMapper {

    /**
     * 修改密码
     * @param pwd
     * @param id
     * @return
     */
    int pwdUpdate(@Param("userPassword") String pwd,@Param("id")  Integer id);

    /**
     * 获取记录数
     * @param userName
     * @param userRole
     * @return
     */
    Integer getUserCount(@Param("userName") String userName,
                         @Param("userRole") Integer userRole);


    /**
     * 按条件查询
     * @param queryName
     * @param queryUserRole
     * @param currentPageNo
     * @param pageSize
     * @return
     */
    List<User> getUserList(@Param(value = "userName") String queryName,
                           @Param(value = "userRole") Integer queryUserRole,
                           @Param("currentPageNo") Integer currentPageNo,
                           @Param("pageSize") Integer pageSize);


    /**
     * 根据编码获取用户
     * @param userCode
     * @return
     */
    User getLoginUser(@Param("userCode") String userCode);




    /**
     * 增加用户信息
     * @param user
     * @return @
     */
    public Integer add(User user);

    /**
     * 修改用户信息
     * @param user
     * @return
     */
    Integer update(User user);

    /**
     * 通过userId获取user
     *
     * @param id
     * @return User
     */
    User getUserById(Integer id);

    /**
     * 通过ID删除user
     * @param id
     * @return
     */
    int delete(@Param(value = "id") Integer id);

    User getUserCode(String userCode);
}
